﻿namespace Contoso.ActiveDirectory {

    #region Usings
    using System;
    using System.Collections;
    using System.Collections.Generic;
    #endregion

    public interface IGroupPolicyAttributes {

        /// <summary>
        /// http://technet.microsoft.com/en-us/library/cc784268%28WS.10%29.aspx
        /// Group Policy Container-Related Attributes of Domain, Site, and OU Containers
        /// Windows uses domain, DNS, site, and organizational unit classes to create domain, site, and OU container objects respectively. 
        /// These objects contain two optional Group Policy container-related attributes, gPLink and gPOptions. 
        /// The gPLink property contains the prioritized list of GPOs and 
        /// the gPOptions property contains the Block Policy Inheritance setting.
        /// The gPLink attribute holds a list of all Group Policy containers linked to the container 
        /// and a number for each listed Group Policy container, 
        /// that represents the Enforced (previously known as No Override) and Disabled option settings. 
        /// The list appears in priority order from lowest to highest priority GPO.
        /// The gPOptions attribute holds an integer value that indicates whether the Block Policy Inheritance 
        /// option of a domain or OU is enabled (0) or disabled (1).
        /// </summary>
        string GPLink { get; }
        IReadOnlyList<string> GPLinkGPODNs { get; }
        string GPOptions { get; }
    }
}
